package com.ruoyi.bus.service;

import java.util.List;
import java.util.Map;

import com.ruoyi.bus.domain.WitRoute;
import com.ruoyi.bus.domain.WitRouteSite;

/**
 * 路线Service接口
 * 
 * @author caiyanshan
 * @date 2021-04-14
 */
public interface IWitRouteService 
{
    /**
     * 查询路线
     * 
     * @param routeId 路线ID
     * @return 路线
     */
    public WitRoute selectWitRouteById(Long routeId);
    
    public WitRoute selectWitRouteByIdNoCache(Long routeId);
    
    public List<WitRoute> selectRouteByTwoSideId(Map<String, Object> paramMap);
    
    public List<WitRoute> listRouteByNowPlan(WitRoute route);
    
    public List<WitRoute> myRoute(Long userId);

    /**
     * 查询路线列表
     * 
     * @param witRoute 路线
     * @return 路线集合
     */
    public List<WitRoute> selectWitRouteList(WitRoute witRoute);

    /**
     * 新增路线
     * 
     * @param witRoute 路线
     * @return 结果
     */
    public int insertWitRoute(WitRoute witRoute);

    /**
     * 修改路线
     * 
     * @param witRoute 路线
     * @return 结果
     */
    public int updateWitRoute(WitRoute witRoute);

    /**
     * 批量删除路线
     * 
     * @param routeIds 需要删除的路线ID
     * @return 结果
     */
    public int deleteWitRouteByIds(Long[] routeIds);

    /**
     * 删除路线信息
     * 
     * @param routeId 路线ID
     * @return 结果
     */
    public int deleteWitRouteById(Long routeId);
    
    public List<WitRouteSite> myCommonRoute(Long userId);
    
    public Integer selectCountRoute();
}
